package dev.ideas.funkyj.function;

import dev.ideas.funkyj.tuple.Trio;

/**
 */
public abstract class F3<X1, X2, X3, Y> extends F<Trio<? extends X1, ? extends X2, ? extends X3>, Y> {
    public abstract Y apply(X1 x1, X2 x2, X3 x3);

    public Y apply(Trio<? extends X1, ? extends X2, ? extends X3> trio) { return apply(trio.first(), trio.second(), trio.third()); }
}
